System wakeup on wireless network messages

ABSTRACT

While an information handling device is in a reduced power state, the information handling device transitions from the reduced power state to a higher power state in response to receiving a message over an established wireless network connection that maintains a presence on a wireless network. In turn, the information handling device processes the message accordingly in the higher power state.

TECHNICAL FIELD

The present disclosure relates to wireless information handling devicesand more particularly to receiving messages in various power states ofthe wireless information handling devices.

BACKGROUND

In certain situations, information handling devices, such as computers,notebooks, mobile phones, etc., may not power down completely, butinstead, may enter reduced power states such as sleep modes (e.g., S2,S3) or a hibernate mode (e.g., S4). Other devices may be externallyconnected to an information handling device through the informationhandling device's ports or slots that receive power from the informationhandling device. For example, a laptop computer may have an ExpressCardslot in which a user may insert an ExpressCard. In this example, theExpressCard may include a wireless transceiver, such as a WiFitransceiver, that the information handling device utilizes in order towirelessly communicate with other devices.

SUMMARY

While an information handling device is in a reduced power state, theinformation handling device transitions from the reduced power state toa higher power state in response to receiving a message over anestablished wireless network connection that maintains a presence on awireless network. In turn, the information handling device processes themessage accordingly in the higher power state.

The foregoing is a summary and thus contains, by necessity,simplifications, generalizations, and omissions of detail; consequently,those skilled in the art will appreciate that the summary isillustrative only and is not intended to be in any way limiting. Otheraspects, inventive features, and advantages of the present disclosure,as defined solely by the claims, will become apparent in thenon-limiting detailed description set forth below.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure may be better understood, and its numerousobjects, features, and advantages made apparent to those skilled in theart by referencing the accompanying drawings, wherein:

FIG. 1 is a diagram showing a computer system using an external slotdevice to monitor wireless network activity when the computer system isin a reduced power state;

FIG. 2 is a diagram showing a computer system that includes an externalslot device that monitors wireless network traffic when the computersystem is in a low power state;

FIG. 3A is a diagram showing a computer system communicating with anetwork access point in a high power state through an internal, primarywireless device;

FIG. 3B is a diagram showing a computer system communicating with anetwork access point in a reduced power state through an external slotdevice's secondary wireless device;

FIG. 4 is a flowchart showing steps taken in a computer system and anexternal slot device maintaining a presence in a wireless network whenthe computer system transitions between power state modes;

FIG. 5 is a block diagram example of a data processing system in whichthe methods described herein can be implemented; and

FIG. 6 provides an extension example of the information handling systemenvironment shown in FIG. 5 to illustrate that the methods describedherein can be performed on a wide variety of information handlingsystems which operate in a networked environment.

DETAILED DESCRIPTION

Certain specific details are set forth in the following description andfigures to provide a thorough understanding of various embodiments ofthe disclosure. Certain well-known details often associated withcomputing and software technology are not set forth in the followingdisclosure, however, to avoid unnecessarily obscuring the variousembodiments of the disclosure. Further, those of ordinary skill in therelevant art will understand that they can practice other embodiments ofthe disclosure without one or more of the details described below.Finally, while various methods are described with reference to steps andsequences in the following disclosure, the description as such is forproviding a clear implementation of embodiments of the disclosure, andthe steps and sequences of steps should not be taken as required topractice this disclosure. Instead, the following is intended to providea detailed description of an example of the disclosure and should not betaken to be limiting of the disclosure itself. Rather, any number ofvariations may fall within the scope of the disclosure, which is definedby the claims that follow the description.

As will be appreciated by one skilled in the art, aspects of the presentdisclosure may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present disclosure may take theform of an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present disclosure may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium may be any tangible medium that can contain, or store a programfor use by or in connection with an instruction execution system,apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent disclosure may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present disclosure are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of thedisclosure. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks. These computerprogram instructions may also be stored in a computer readable mediumthat can direct a computer, other programmable data processingapparatus, or other devices to function in a particular manner, suchthat the instructions stored in the computer readable medium produce anarticle of manufacture including instructions which implement thefunction/act specified in the flowchart and/or block diagram block orblocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The following detailed description will generally follow the summary ofthe disclosure, as set forth above, further explaining and expanding thedefinitions of the various aspects and embodiments of the disclosure asnecessary. To this end, this detailed description first sets forth acomputing environment in FIG. 1 that is suitable to implement thesoftware and/or hardware techniques associated with the disclosure. Anetworked environment is illustrated in FIG. 2 as an extension of thebasic computing environment, to emphasize that modern computingtechniques can be performed across multiple discrete devices.

FIG. 1 is a diagram showing a computer system using an external slotdevice to monitor wireless network activity when the computer system isin a reduced power state. This disclosure allows a user to maintain a“presence” on a wireless network (e.g., for instant messaging) while acomputer system is in a state that utilizes relatively low power (e.g.,sleep mode or hibernate mode). Although specific examples providedherein refer to a computer system, the concepts described herein applyto any information handling device including mobile phones, smallhandheld palmtops or personal data organizers, small and large notebookcomputers, desktop computers, etcetera, as covered by the claims.

User 105 uses computer system 100 to connect to computer network 150through network access point 140 in order to send/receive wirelessmessages to/from correspondence computer systems 170 (through messagingserver 160). In particular situations, user 105 may wish to havecomputer system 100 monitor wireless network traffic when computersystem 100 is in a reduced power state. For example, user 105 may beinvolved in an instant messaging session with one or more of users 180and has to place computer system 100 (e.g., iaptop computer) inhibernate mode for a short period. In another example, computer system100 may be low on battery power and automatically enter hibernate modeuntil user 105 plugs in a power supply to computer system 100. In eithercase, user 105 may wish to have computer system 100 monitor wirelessnetwork traffic in order for user 105 to not miss messages.

Computer system 100 includes primary wireless device 110 for connectingwith network access point 140. For example, computer system 100 may be alaptop computer and primary wireless device 110 may be an internalwireless network card. Computer system 100 also includes external slotdevice 120, such as an external card in an ExpressCard form factor.External slot device 120 includes secondary wireless device 130 andmonitor client 135. In one embodiment, external slot device 120 may bean Always On/Constant Connect 2.0 card (CC card).

When computer system 100 is in a high power state, primary wirelessdevice 110 establishes a wireless connection with network access point120. In turn main client 115 establishes a socket connection withinstant messaging server 160 through computer network 150 (e.g., theInternet). A socket connection establishes bidirectional communicationbetween a server program and one or more client programs. The socketconnection associates a server program to a hardware port in order for aclient program to communicate with the server program through thehardware port.

By establishing the socket connection, main client 115 sends/receivesmessages to/from correspondence computer systems 170 through messagingserver 160. In one embodiment, main client 115 includes a) a userinterface through which user 105 may login/logout and view receivedmessage or compose messages, and b) a standard protocol implementationto communicate with messaging server 160 (e.g., XMPP, SIP, and SIMPLE).The protocols define messages that are exchanged between clients andservers, including messages to login, logout, report user status, sendand receive messages, and report errors.

When computer system 100 enters a lower power state, computer system 100disables primary wireless device 110 in order to conserve power.Concurrently, computer system 100 informs external slot device 120 ofthe reduced power state, which causes external slot device 120 to turnon. Secondary wireless device 130 establishes a wireless connection withnetwork access point 120 and allows monitor client 135 to establish asocket connection with instant messaging server 160 using user 105'scredentials. As a result, user 105 appears to continually be availableto receive messages while computer system 100 is in the reduced powerstate.

Monitor client 135 monitors wireless network traffic for messagesintended for user 105. When monitor client 135 detects an intendedmessage, monitor client 135 notifies computer system 100 accordingly. Inone embodiment, external slot device 120 and computer system 100 arelinked via a universal serial bus (USB). In this embodiment, whenmonitor client 135 detects an intended message, external slot device 120invokes computer system 100 to enter a high power state (S0 state) usinga USB wakeup protocol. When computer system 100 wakes up, monitor client135 breaks its socket connection with messaging server 160 and mainclient 115 re-establishes its socket connection with messaging server160. In another embodiment, when monitor client 135 detects an incomingmessage, monitor client 135 examines the address of the message senderand, if the sender is on a pre-approved list, monitor client 135 sends amessage for computer system 100 to enter the S0 state. Otherwise,monitor client 135 stores the message for later viewing, and computersystem 100 remains in reduced power state.

In yet another embodiment, before monitor client 135 breaks its socketconnection with message server 160, monitor client 135 responds to thesending correspondence computer system 170 in a manner that isprotocol-specific. For example, in the case of an XMPP protocol(Extensible Messaging and Presence Protocol), monitor client 135 sendsan “error” response, causing the sender (correspondence computer system170) to resend the message. In this embodiment, the re-sent message isreceived by primary wireless device 110 and main client 115 becausecomputer system 100 is, at that point, in a high power state.

In yet another embodiment, such as with a laptop PC, system behavior maybe related to the state of the laptop lid. If the lid is open, computersystem 100 behaves as described above. However, if the lid is closed,monitor client 135 may inform messaging server 160 that user 105 is“away”, but it is still able to receive messages. In this embodiment,monitor client 135 does not awaken computer system 100 but, instead, maystore messages for later viewing (see FIGS. 2, 4, and corresponding textfor further details).

FIG. 2 is a diagram showing a computer system that includes an externalslot device that monitors wireless network traffic when the computersystem is in a reduced power state. Computer system 100 includes primarywireless device 110 (e.g., internal wireless card) for communicatingwith wireless networks. When computer system 100 is in a high powerstate, main client 115 (e.g., software application executing onprocessor 200) sends and receives messages (through I/O controller hub210) over a wireless network using primary wireless device 110. In oneembodiment, when computer system 100 enters a reduced power state,primary wireless device 110 may be disconnected from processor 200 andconnected to external processor 240 (e.g., using an electrical switch).

Computer system 100 also includes a slot (e.g., ExpressCard slot, PCMCIAcard slot, etc.) for which to insert external slot device 120. Theexample shown in FIG. 2 shows that external slot device 120 includessecondary wireless device 130, monitor client application 135 executingon external processor 240, and memory 245. Memory 245 may be volatile ornon-volatile memory. When computer system 100 enters a reduced powerstate, embedded controller 220 disables power to primary wireless device110 via power control 260 and informs power controller 230 to providepower to external slot device 120 via power line 270. In turn, externalslot device 120 provides power to external processor 240, which invokesmonitor client application 135 and provides power to secondary wirelessdevice 130 via power control 280. As such, when computer system 100enters a reduced power state, monitor client 135 and secondary wirelessdevice 130 maintain a presence on the wireless network and monitorwireless network traffic. Monitor client 135 includes a standardmessaging protocol implementation and an agent, which acts in place of auser. The agent includes logic that determines times at which to connectand disconnect to the server, and how to respond to messages receivedfrom the server.

When monitor client 135 detects a message (e.g., instant message)intended for computer system 100's user, monitor client 135 sends amessage to processor 200 via USB 250 to wake up (enter a high powerstate). In the process of entering a high power state, embeddedcontroller 220 turns on power to primary wireless device 110 and informspower control 230 to remove power from external slot device. As such,computer system 100 re-establishes wireless connectivity via primarywireless device 110 (see FIG. 4 and corresponding text for furtherdetails). In one embodiment, such as when a laptop computer's lid isclosed, monitor client 135 stores received messages in memory 245 toprovide to computer system 100 at a later time.

FIG. 3A is a diagram showing a computer system communicating with anetwork access point in a high power state through an internal, primarywireless device. Computer system 100 includes primary wireless device110 and a slot that is adapted to receive external slot device 120,which includes external processor 240 and secondary wireless device 130.

FIG. 3A shows that when computer system 100 is in a high power state,computer system 100 communicates with network access point 140 throughprimary wireless device 110. In one embodiment, in order to ensure thatsecondary wireless device 130 does not interfere with thesecommunications, external processor 240 disables secondary wirelessdevice 130 when computer system 100 is in the high power state.

FIG. 3B is a diagram showing a computer system communicating with anetwork access point in a reduced power state through an external slotdevice's secondary wireless device. When computer system 100 enters areduced power state, FIG. 3B shows that external slot device 120communicates with network access point 140 using secondary wirelessdevice 130. In one embodiment, in order to ensure that primary wirelessdevice 110 does not interfere with these communications, computer system100 disables primary wireless device 110 when computer system 100 is inthe reduced power state (see FIG. 4 and corresponding text for furtherdetails).

FIG. 4 is a flowchart showing steps taken in a computer system and anexternal slot device maintaining a presence in a wireless network whenthe computer system transitions between power state modes. As discussedpreviously, this disclosure allows a user to maintain a presence on awireless network, such as for instant messaging, while a computer systemis in a state that requires relatively low power. In turn, the computersystem does not miss messages intended for the computer system's user.

Computer system processing commences at 400, whereupon the computersystem initiates a high power state (normal start-up) at step 405. Atstep 410, the computer system invokes a main client application, such asmain client 115 shown in FIG. 2. Next, at step 415, the computer systemutilizes a primary wireless device, such as primary wireless device 110shown in FIG. 2, to establish a socket connection with messaging server160. For simplicity, network access point 140 and computer network 150are not shown in FIG. 4 as a conduit to send/receive communicationbetween the computer system and messaging server 160.

Once the computer system establishes the socket connection, the computersystem processes messages (e.g., instant messages) at step 420, whichare messages sent to and received from correspondence computer systemsthrough messaging server 160. The computer system continues to processmessages and monitors whether there is a power state change (decision425). For example, the computer system's user may place the computersystem in sleep mode, in hibernate mode, or close the lid. If there isnot a power state change, decision 425 branches to “No” branch 427,which loops back to continue to process messages using the main clientand primary wireless device.

This looping continues until a power state change occurs, at which pointdecision 425 branches to “Yes” branch 429 whereupon the computer systemdisconnects its socket connection with messaging server 160 at step 430(e.g., stops responding). Next, the computer system switches to a lowerpower state and sends a message to the external slot device step 435.

At this point, external slot device processing commences at 450,whereupon the external slot device receives the power state changeindication and turns on at step 455. Next, the external slot deviceinitiates its monitor client at step 460, such as monitor client 135shown in FIG. 2. The monitor client uses the same user credentialsutilized by the computer system to establish a socket connection withmessaging server 160 using a secondary wireless device located on theexternal slot device, such as secondary wireless device 130 shown inFIG. 2.

The monitor client waits for a message from messaging server 160 (step470). Once the monitor client receives a message, a determination ismade as to whether to wake up the computer system or wait for a latertime based upon the computer's wake up parameters (decision 475). Forexample, the computer system may be a laptop computer with a closed lid,and the wake up parameters do not allow the computer to be woken up whenits lid is closed. In this example, the monitor client stores messagesand waits for a user to open up the computer system's lid before wakingup the computer system. If the monitor client should wait to wake up thecomputer system, decision 475 branches to “No” branch 476 whereupon themonitor client stores the message (e.g., in memory 245 shown in FIG. 2)at step 478 and informs messaging server 160 that the user is away butcan still receive messages.

On the other hand, if the monitor client should wake up the computersystem, decision 475 branches to “Yes” branch 479. A determination ismade as to whether to send the received message to the computer systemor to send an error message to messaging server 160 in order for theoriginating correspondence computer system to resend the message(decision 480). If the monitor client should send the message to thecomputer system, decision 480 branches to “Yes” branch 482 whereupon themonitor client wakes up the computer system and sends the message to thecomputer system, such as using a USB wakeup protocol over USB bus 250shown in FIG. 2 (step 483).

The computer system wakes up at step 440, switches to high power stateat step 445, and re-establishes a socket connection with messagingserver 160 to process messages. In conjunction, the external slot devicedisconnects its socket connection with messaging server 160 (step 492)and switches to a reduced power state (step 494).

On the other hand, if the external slot device is configured to not sendthe message to the computer system but, instead, send an error messageto messaging server 160, decision 480 branches to “No” branch 488,whereupon the external slot device sends a wake up notification (e.g.,using a USB wakeup protocol) to the computer system at step 485. Next,the monitor client sends an error message to messaging server 160 (step490), indicating that the received message included errors which, inturn, causes the correspondence computer system that sent the originalmessage to resend the message (which is received by the computersystem's primary wireless device and processed by the computer system'sIM client). At step 492, the external wireless device disconnects itssocket connection with messaging server 160 and switches to a lowerpower state at step 494. External socket device processing ends at 495.

FIG. 5 illustrates information handling system 500, which is asimplified example of a computer system capable of performing thecomputing operations described herein. Information handling system 500includes one or more processors 510 (e.g., processor 200 shown in FIG.2) coupled to processor interface bus 512. Processor interface bus 512connects processors 510 to Northbridge 515, which is also known as theMemory Controller Hub (MCH). Northbridge 515 connects to system memory520 and provides a means for processor(s) 510 to access the systemmemory. Graphics controller 525 also connects to Northbridge 515. In oneembodiment, PCI Express bus 518 connects Northbridge 515 to graphicscontroller 525. Graphics controller 125 connects to display device 530,such as a computer monitor.

Northbridge 515 and Southbridge 535 connect to each other using bus 519.In one embodiment, the bus is a Direct Media Interface (DMI) bus thattransfers data at high speeds in each direction between Northbridge 515and Southbridge 535. In another embodiment, a Peripheral ComponentInterconnect (PCI) bus connects the Northbridge and the Southbridge.Southbridge 535, also known as the I/O Controller Hub (ICH) is a chipthat generally implements capabilities that operate at slower speedsthan the capabilities provided by the Northbridge. Southbridge 535typically provides various busses used to connect various components.These busses include, for example, PCI and PCI Express busses, an ISAbus, a System Management Bus (SMBus or SMB), and/or a Low Pin Count(LPC) bus. The LPC bus often connects low-bandwidth devices, such asboot ROM 596 and “legacy” I/O devices (using a “super I/O” chip). The“legacy” I/O devices (598) can include, for example, serial and parallelports, keyboard, mouse, and/or a floppy disk controller. The LPC busalso connects Southbridge 535 to Trusted Platform Module (TPM) 595.Other components often included in Southbridge 535 include a DirectMemory Access (DMA) controller, a Programmable Interrupt Controller(PIC), and a storage device controller, which connects Southbridge 535to nonvolatile storage device 585, such as a hard disk drive, using bus584.

ExpressCard 555 is a slot that connects hot-pluggable devices (e.g.,external slot device 120 shown in FIG. 1) to the information handlingsystem. ExpressCard 555 supports both PCI Express and USB connectivityas it connects to Southbridge 535 using both the Universal Serial Bus(USB) the PCI Express bus. Southbridge 535 includes USB Controller 540that provides USB connectivity to devices that connect to the USB. Thesedevices include webcam (camera) 550, infrared (IR) receiver 548,keyboard and trackpad 544, and Bluetooth device 546, which provides forwireless personal area networks (PANs). USB Controller 540 also providesUSB connectivity to other miscellaneous USB connected devices 542, suchas a mouse, removable nonvolatile storage device 545, modems, networkcards, ISDN connectors, fax, printers, USB hubs, and many other types ofUSB connected devices. While removable nonvolatile storage device 545 isshown as a USB-connected device, removable nonvolatile storage device545 could be connected using a different interface, such as a Firewireinterface, etcetera.

Wireless Local Area Network (LAN) device 575 connects to Southbridge 535via the PCI or PCI Express bus 572. LAN device 575 (e.g., primarywireless device 110 shown in FIG. 1) typically implements one of theIEEE 802.11 standards of over-the-air modulation techniques that all usethe same protocol to wireless communicate between information handlingsystem 500 and another computer system or device. Optical storage device590 connects to Southbridge 535 using Serial ATA (SATA) bus 588. SerialATA adapters and devices communicate over a high-speed serial link. TheSerial ATA bus also connects Southbridge 535 to other forms of storagedevices, such as hard disk drives. Audio circuitry 560, such as a soundcard, connects to Southbridge 535 via bus 558. Audio circuitry 560 alsoprovides functionality such as audio line-in and optical digital audioin port 562, optical digital output and headphone jack 564, internalspeakers 566, and internal microphone 568. Ethernet controller 570connects to Southbridge 535 using a bus, such as the PCI or PCI Expressbus. Ethernet controller 570 connects information handling system 500 toa computer network, such as a Local Area Network (LAN), the Internet,and other public and private computer networks. Trusted Platform Module(TPM 595) provides security functions for information handling system500.

While FIG. 5 shows one information handling system, an informationhandling system may take many forms. For example, an informationhandling system may take the form of a desktop, server, portable,laptop, notebook, or other form factor computer or data processingsystem. In addition, an information handling system may take other formfactors such as a personal digital assistant (PDA), a gaming device, ATMmachine, a portable telephone device, a communication device or otherdevices that include a processor and memory.

FIG. 6 provides an extension example of the information handling systemenvironment shown in FIG. 5 to illustrate that the methods describedherein can be performed on a wide variety of information handlingsystems that operate in a networked environment. Types of informationhandling systems range from small handheld devices, such as handheldcomputer/mobile telephone 610 to large mainframe systems, such asmainframe computer 670. Examples of handheld computer 610 includepersonal digital assistants (PDAs), personal entertainment devices, suchas MP3 players, portable televisions, and compact disc players. Otherexamples of information handling systems include pen, or tablet,computer 620, laptop, or notebook, computer 630, workstation 640,personal computer system 650, and server 660. Other types of informationhandling systems that are not individually shown in FIG. 6 arerepresented by information handling system 680. As shown, the variousinformation handling systems can be networked together using computernetwork 600. Types of computer network that can be used to interconnectthe various information handling systems include Local Area Networks(LANs), Wireless Local Area Networks (WLANs), the Internet, the PublicSwitched Telephone Network (PSTN), other wireless networks, and anyother network topology that can be used to interconnect the informationhandling systems. Many of the information handling systems includenonvolatile data stores, such as hard drives and/or nonvolatile memory.Some of the information handling systems shown in FIG. 6 depictsseparate nonvolatile data stores (server 660 utilizes nonvolatile datastore 665, mainframe computer 670 utilizes nonvolatile data store 675,and information handling system 680 utilizes nonvolatile data store685). The nonvolatile data store can be a component that is external tothe various information handling systems or can be internal to one ofthe information handling systems. In addition, removable nonvolatilestorage device 645 can be shared among two or more information handlingsystems using various techniques, such as connecting the removablenonvolatile storage device 645 to a USB port or other connector of theinformation handling systems.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present disclosure. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the Figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

While particular embodiments of the present disclosure have been shownand described, it will be obvious to those skilled in the art that,based upon the teachings herein, that changes and modifications may bemade without departing from this disclosure and its broader aspects.Therefore, the appended claims are to encompass within their scope allsuch changes and modifications as are within the true spirit and scopeof this disclosure. Furthermore, it is to be understood that thedisclosure is solely defined by the appended claims. It will beunderstood by those with skill in the art that if a specific number ofan introduced claim element is intended, such intent will be explicitlyrecited in the claim, and in the absence of such recitation no suchlimitation is present. For non-limiting example, as an aid tounderstanding, the following appended claims contain usage of theintroductory phrases “at least one” and “one or more” to introduce claimelements. However, the use of such phrases should not be construed toimply that the introduction of a claim element by the indefinitearticles “a” or “an” limits any particular claim containing suchintroduced claim element to disclosures containing only one suchelement, even when the same claim includes the introductory phrases “oneor more” or “at least one” and indefinite articles such as “a” or “an”;the same holds true for the use in the claims of definite articles.

1. A machine-implemented method comprising: at an information handlingdevice, enabling at least a first wireless device in response to theinformation handling device entering a reduced power state, wherein thefirst wireless device is enabled such that it at least wirelesslyconnects to a wireless network; transitioning from the reduced powerstate to a higher power state in response to receiving a message,wherein the message was received over the wireless network through anestablished network connection that maintains a presence on the wirelessnetwork; enabling a second wireless device in response to receiving themessage; establishing a subsequent network connection using the secondwireless device; receiving the message over the subsequent networkconnection; and processing the message using the information handlingdevice.
 2. (canceled)
 3. The method of claim 1 wherein the establishednetwork connection is a socket connection.
 4. The method of claim 1further comprising: providing power to an external device in response tothe information handling device entering the reduced power state, theexternal device including the first wireless device; and receiving awake up notification from the external device to transition to thehigher power state.
 5. The method of claim 4 wherein the message wasreceived by the external device.
 6. (canceled)
 7. The method of claim 1further comprising: sending an error message over the network connectionin order to receive the message over the subsequent network connection.8. An information handling system comprising: one or more processors; amemory accessible by at least one of the processors; one or morewireless devices accessible by at least one of the processors; a set ofinstructions stored in the memory and executed by at least one of theprocessors in order to perform actions of: entering a reduced powerstate; enabling at least a first wireless device in response to theinformation handling system entering the reduced power state, whereinthe first wireless device is enabled such that it at least wirelesslyconnects to a wireless network; transitioning from the reduced powerstate to a higher power state in response to receiving a message,wherein the message was received over the wireless network through anestablished network connection that maintains a presence on the wirelessnetwork; enabling a second wireless device in response to receiving themessage; establishing a subsequent network connection using the secondwireless device; receiving the message over the subsequent networkconnection; and processing the message.
 9. (canceled)
 10. Theinformation handling system of claim 8 wherein the established networkconnection is a socket connection.
 11. The information handling systemof claim 8 wherein the set of instructions further performs actions of:providing power to an external device in response to the informationhandling system entering the reduced power state, the external deviceincluding the first wireless device; and receiving a wake upnotification from the external device to transition to the higher powerstate.
 12. The information handling system of claim 11 wherein the setof instructions further performs actions of: receiving the message fromthe external device.
 13. (canceled)
 14. The information handling systemof claim 8 wherein the set of instructions further performs actions of:sending an error message over the network connection in order to receivethe message over the subsequent network connection.
 15. Amachine-implemented method comprising: enabling a first wireless device,the enabling performed in response to detecting that an informationhandling device entered a reduced power state; establishing a networkconnection using the enabled first wireless device, the first wirelessdevice maintaining a presence on a wireless network; receiving, at thefirst wireless device, a first message over the established networkconnection using the first wireless device while the informationhandling device is in the reduced power state; notifying the informationhandling device to enter a higher power state in response to receivingthe first message; and in response to determining not to send the firstmessage to the information handling device, using the enabled firstwireless device to send second message over the wireless network,wherein the second message is adapted to invoke resending the firstmessage to the information handling device. 16-18. (canceled)
 19. Themethod of claim 15 further comprising: detecting that the informationhandling device meets the one or more wake up parameters; and sendingthe stored first message to the information handling device in responseto the detecting.
 20. The method of claim 15 wherein the establishednetwork connection is a socket connection.
 21. The method of claim 15further comprising: determining to delay the notification of theinformation handling device based upon one or more wake up parameters;and in response to delaying the notification of the information handlingdevice: storing the first message; and sending an away indicator messageover the wireless network.
 22. The method of claim 15, wherein thesecond message is an error message.